/*****************************************************************************/
/* BroadVoice(R)16 (BV16) Fixed-Point ANSI-C Source Code                     */
/* Revision Date: November 13, 2009                                          */
/* Version 1.1                                                               */
/*****************************************************************************/

/*****************************************************************************/
/* Copyright 2000-2009 Broadcom Corporation                                  */
/*                                                                           */
/* This software is provided under the GNU Lesser General Public License,    */
/* version 2.1, as published by the Free Software Foundation ("LGPL").       */
/* This program is distributed in the hope that it will be useful, but       */
/* WITHOUT ANY SUPPORT OR WARRANTY; without even the implied warranty of     */
/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LGPL for     */
/* more details.  A copy of the LGPL is available at                         */
/* http://www.broadcom.com/licenses/LGPLv2.1.php,                            */
/* or by writing to the Free Software Foundation, Inc.,                      */
/* 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.                 */
/*****************************************************************************/


/*****************************************************************************
  tables.c : Tables

  $Log$
******************************************************************************/

#include "typedef.h"

/* for log-gain restriction */

Word16 lgclimit[] = {
      0,    405,    285,   7304,   7211,      0,      0,      0,
      0,      0,      0,      0,      0,   7092,    886,   7049,
   7131,      0,      0,      0,      0,      0,      0,      0,
  -1004,   4563,   4012,   7219,   7055,    466,  -1236,      0,
      0,      0,      0,      0,  -1004,   4439,   6928,   7217,
   7143,   6643,   1099,      0,      0,      0,      0,      0,
   -754,   4758,   7130,   7112,   7106,   7136,   6250,  -2555,
      0,      0,      0,      0,   2358,   6315,   7215,   7241,
   7250,   6905,   6344,   1030,      0,      0,      0,      0,
   5458,   5492,   7082,   7006,   7137,   7055,   6705,   5210,
    -79,  -1498,      0,      0,   3376,   5220,   6832,   6591,
   6844,   6842,   6722,   6486,    373,    154,   2494,   4023,
   1352,   4877,   5046,   5304,   5443,   6617,   6505,   6478,
   4591,    678,   2492,   4001,   3199,   4233,   4496,   4652,
   4624,   5295,   5744,   5669,   4263,   4311,   3944,   4025,
   3169,   3440,   4088,   3774,   3842,   3942,   4655,   4473,
   3539,   3936,   3698,   1797,   2255,   2798,   3163,   3095,
   3144,   3506,   3016,   2784,   2392,   2857,   3947,   3820,
   1739,   2773,   2765,   2446,   2352,   2373,   3294,   1813,
   2242,   1895,   3404,   2429,      0,   1792,   2357,   2008,
   1885,   2159,   2144,   1703,   1735,   1192,   2637,    904,
      0,    564,   1559,   1633,   1332,   1245,   1490,    760,
    223,    227,    770,    898,      0,    -61,   -582,    725,
    766,    373,    309,   -181,   -503,   -589,  -1021,      0,
      0,      0,      0,    701,    607,   -189,  -2057,  -1133,
      0,   -681,  -1558,      0,      0,      0,      0,    271,
    221,      0,      0,  -1466,      0,      0,      0,      0
};

Word16 lspecb1[] = { /* Q17 */
   -784,   -988,  -1487,    -35,  -1358,   -731,   1198,   -429,
   -697,   -253,    486,  -1390,   -286,    -50,   1312,    491,
   -122,    -24,   -534,  -1448,  -3130,   -553,    185,   -800,
    408,    171,    999,   -553,   -967,   -590,   -677,   2078,
   -305,   -190,   -477,    931,    342,  -2256,   -126,   -782,
  -1066,  -1014,   1203,    633,   1329,     94,    396,    182,
     80,    535,   -135,  -1072,  -1656,  -2865,   -100,  -1208,
   1187,   1066,   1264,    126,    145,   -558,    510,   -452,
   -587,   -925,  -2079,    261,   1143,     78,    296,   -977,
    552,    691,   -805,    753,    748,   -291,   1755,   1014,
   -523,   -489,  -1353,   -849,   -651,   -569,   -878,  -2449,
    466,    562,   2613,   1033,    410,  -1078,  -1871,   -198,
    430,    175,    -59,   1958,    998,    436,   -503,  -1445,
    143,    668,   1686,   1200,   1158,   1985,   1267,    569,
   -619,   -606,   1267,    557,   -848,   -523,   -746,  -2129,
     -3,      0,   3479,   1678,    654,    713,    114,   -618,
   -971,  -1174,  -2301,  -2288,   -758,  -1940,    998,   1046,
   -259,   -356,  -1018,  -1372,  -1191,   -361,   4014,   2107,
   -582,   -780,  -1688,  -2589,  -3990,  -2112,    493,   1286,
    -25,    270,   2101,    601,  -1199,   -769,   2970,   1640,
   -754,   -792,   -390,  -1206,    715,   -612,  -1805,   -465,
   -290,   -605,  -1100,   1537,   3254,   1656,   1083,     25,
   -218,      1,   -673,  -1105,  -1688,  -2581,  -2923,  -2203,
    605,   1501,   1952,   1207,   2472,   -763,   1045,    604,
    -88,    -88,  -1561,  -2445,   1472,   -695,    921,   -210,
   1496,   1727,    602,  -1261,   1810,   1005,   1807,   1867,
   1179,   1507,  -3235,  -1213,   -884,   -854,   -723,   -945,
   1530,   3979,   5191,   3126,   1483,     88,  -1058,    888,
    800,    946,    367,   -996,   2047,    573,   -965,  -1855,
    912,   1412,   1846,    480,   4265,   2844,    736,    802,
    852,    740,    880,    104,    106,  -1298,  -2395,  -3776,
   1931,   2114,   3621,   3130,   2810,   1721,    624,   -627,
  -1088,  -1774,  -2193,    -45,  -1185,   -111,   -231,   2119,
   -415,   -747,   -150,    830,  -1190,   1598,    293,    636,
   -660,  -1019,  -1357,  -1901,  -2506,   -471,  -2090,    555,
   1034,    710,    501,   -218,  -1431,   -518,  -2231,   -244,
   -510,  -1079,  -1477,   1322,   -576,   -653,  -1980,    244,
   -394,   -670,    183,   3277,    -49,   -595,   1582,    936,
   -229,   -413,  -1236,  -2025,  -2477,  -3471,  -1958,    931,
    920,   1456,   1871,    926,  -1119,  -2875,    554,    383,
  -1101,  -1581,  -2600,   -834,   1449,    599,   1077,   2001,
   -170,   -309,    548,    722,    869,    539,   1856,   4074,
   -105,    359,   -365,  -3646,   -677,   -859,  -1243,   -927,
   3381,   2937,   2494,   1616,    245,  -1632,  -3431,  -1232,
    320,    151,   -265,    244,   1965,    665,  -1351,   1389,
    592,   1129,   3727,   2110,   1672,   1626,   3425,   2494,
   -844,   -951,   1067,   1048,  -2954,  -2094,   -785,   -167,
   -109,    247,   5550,   2851,    114,   -540,   1122,   1339,
  -2977,  -4060,   -391,   -596,   -586,    -48,     84,    322,
     42,   -102,     99,   -808,  -1308,   3573,   2359,   2032,
   -296,   -448,   -979,  -2102,  -5268,  -1099,  -2489,  -1336,
    291,    590,   3193,   1094,  -3225,    616,   -281,    302,
   -389,   -686,    333,   1446,    383,   -744,  -4081,  -1062,
    252,    138,    614,   4222,   2651,   1967,    914,    288,
     32,    393,    279,    720,  -1969,  -5026,  -1806,  -2006,
    317,   5487,   4154,   3366,   1852,   1017,   2025,   1194,
  -1008,  -1655,  -3301,  -3425,    532,   1739,   2577,   2963,
    877,   1163,   2066,   1350,   2537,   3018,   2646,   5858,
   -656,  -1589,  -6032,  -2389,  -3414,  -3395,  -2741,  -2298,
    755,   1833,   7591,   4613,   -533,  -2443,  -3732,  -2247,
    337,    696,   1567,    923,   2230,   2794,  -3178,  -1032,
   2318,   4471,   4731,   4265,   4747,   4163,   3064,   2343,
    237,    711,   2933,   1262,  -2808,  -2113,  -3458,  -3119,
    530,   2445,   8948,   9077,   3803,   1907,   1140,     15,
   -959,  -1279,  -2170,  -2159,   -720,   1375,     40,   -342,
    161,    137,   -167,  -1928,   1077,   2353,    566,    663,
   -329,   -716,  -1409,  -2722,  -3635,   1628,    994,    330,
   1087,   1010,    423,  -1104,  -1507,   1982,     70,   -252,
   -889,  -1168,  -2418,    226,   -846,  -2847,   -321,   -255,
    -80,   -653,   1599,   2312,    917,    873,   -974,   2226,
     -7,    161,   -275,   -815,  -2250,  -3155,   1984,   1063,
   2316,   1965,   1844,   1282,    456,   1379,    191,    359,
   -842,  -1096,  -2108,  -1387,   2779,   1617,   -248,  -1066,
   -700,   -580,     -1,     63,   2075,   1274,   3301,    846,
   -495,   -505,  -2028,  -3013,    105,    552,  -2247,  -2952,
    186,    821,   3053,   1636,   1534,    192,  -1400,  -3277,
   -803,  -1525,  -1975,   3251,   1921,    672,   -627,   -957,
  -1136,  -1407,   2538,   2761,   2707,   2239,   1937,   1576,
   -449,   -470,   -208,   -250,  -1874,   1721,  -1981,  -2583,
   -268,     88,   5435,   3273,   2586,   2303,   -211,     52,
  -1059,  -1561,  -2844,  -3677,  -1388,    -31,   -119,   2119,
   1616,    737,   -989,  -2769,  -1682,     14,    805,   1962,
   -385,  -1059,  -2377,  -3997,  -6255,    134,    927,   2057,
   1861,   2311,    744,   -578,  -2160,   1123,   2096,   2205,
   -809,  -1272,  -2691,  -1747,    766,   -898,  -2991,    568,
   -680,  -1456,  -2342,   3082,   2557,   2342,   2102,   1985,
    256,   -141,    -82,  -1083,  -1926,  -2982,  -4775,   1277,
   3718,   4538,   1714,   1333,   2292,   2584,   2279,   1912,
   -872,  -1157,  -3235,  -4343,   1884,    755,    -36,   -100,
    243,    471,    -83,  -1637,   4289,   2309,   3067,   2539,
  -1779,  -4457, -11718,  -2485,  -1222,  -1106,  -1184,  -1161,
   1306,   6064,   5948,   3624,   2102,    333,  -1390,  -2519,
   -455,   -711,  -1500,    517,   2338,    715,  -2242,  -3508,
   -157,     42,   1077,   2743,   7032,   4705,   2593,   1217,
    306,    458,   -191,    188,   -720,  -1674,  -4306,  -6388,
   1160,   3444,   6464,   4950,   6547,   3660,   -238,  -1811,
  -1203,  -2389,  -5645,    253,    217,    220,    -68,   -139,
   -554,   -581,   -155,    895,    455,   3663,    267,  -1411,
  -1161,  -1019,  -2706,  -2853,  -2188,  -2180,   -539,  -1457,
   1505,   1807,    674,    224,  -1662,   -134,   -461,  -2199,
   -629,  -1084,  -2499,   1803,   -738,  -1531,  -1972,  -2769,
   -175,   -281,   1496,   5701,    489,   -557,   -831,  -1001,
   -359,   -144,  -1363,  -1780,  -3796,  -5778,    379,     62,
   4498,   4625,   2859,   1230,   -717,  -1135,    821,    662,
   -756,  -1213,  -2949,  -1975,   4021,   2793,   1970,    854,
   -383,   -296,    231,   1179,   2152,   2263,   6349,   3565,
   -349,     34,  -2940,  -7044,  -1561,  -1684,   -915,   -888,
   1000,   5535,   1439,     37,    789,    269,   -365,   -986,
   -511,   -402,    558,   1676,   5043,    361,  -1544,   -710,
   -473,    469,   5565,   4343,   4362,   3694,   3678,   2717,
    604,   1055,   1456,   -864,  -6809,  -2065,   -255,   -382,
    452,   2305,  10771,   3578,   2056,   2091,   2414,   1879,
  -4117,  -7512,  -4739,  -2431,  -2830,  -1229,  -1280,   -249,
     97,    188,   1311,   1104,   1148,   6261,   2337,   1405,
   -198,  -1062,  -3961,  -6053,  -9581,  -3978,  -2644,   -791,
   1303,   3405,   5102,   -810,  -1463,    803,   1114,   -211,
   -268,   -741,   -858,    -58,  -1366,  -2334,  -7675,  -1666,
   -369,   -383,   1420,   8080,   3831,   2842,   1477,    560,
   1339,   1995,   -141,  -2450,  -5685,  -7655,  -4337,  -2392,
   4473,   9954,   6083,   4338,   3429,   2740,   2083,   1489,
  -1075,  -2064,  -7179,  -7545,    824,    384,   1281,    799,
    297,   1052,   2914,   3012,   5469,   5989,   8517,   5610,
  -1434,  -3479, -11080,  -9696,  -6183,  -5039,  -2849,  -1645,
   3729,  10836,  14762,   6983,   1507,  -2414,  -3646,  -5048,
   -128,   -177,   1079,   5388,   2924,    273,  -3816,  -4762,
    894,   3184,   7613,   8965,  10348,   8145,   5843,   2502,
   3843,   8267,   6516,  -1579,  -5774,  -5780,  -3922,  -3817,
   3565,  10994,  17744,  13407,   9719,   6016,   3607,    -37
};

Word16 lspecb2[] = { /* Q17 */
    -60,      3,    130,    354,    978,    694,   -139,   -234,
    -39,   -133,   -113,    115,   -139,    115,  -1525,     36,
   -155,   -261,   -499,   -529,    -40,    315,    622,   1166,
   -442,   -247,    648,   -689,    212,   -657,    231,    691,
     28,    108,   -356,   -961,    197,    712,    190,   -437,
   -249,   -382,   -498,   -572,   -132,   -227,   -568,   -824,
   -336,   -396,   -266,    312,   -960,    934,    500,    251,
   -639,   -750,    108,    247,   -936,   -641,   -271,   -344,
    -14,   -191,   -624,    434,   1363,   -220,    353,    719,
    -85,   -183,  -1024,   -491,    544,   -521,   -899,    656,
   -567,   -636,  -1003,    505,    362,   -269,    781,   -101,
  -1326,    510,   -231,    434,     95,   -482,   -212,   -225,
   -608,   -718,   -672,   -303,    729,    738,   -141,    118,
   -557,   -769,   -146,    491,    908,   -740,   -808,   -253,
   -345,   -948,  -1230,    702,   -507,    260,   -372,    595,
    592,  -1739,   -214,    -53,     77,   -466,   -153,   -123,
      1,     52,    735,   -330,    244,   1428,   -180,    599,
   -272,   -569,    499,   1017,   -360,   1202,   -676,   -282,
   -104,   -275,    788,    -50,  -1030,    326,   -275,   1552,
   -391,   -541,   1854,    278,    -25,    -81,   -360,     86,
     47,    224,    340,  -2110,     -1,    213,   -175,    132,
   -660,   -606,    570,   -338,    413,    613,    119,  -1350,
    -75,   -290,   -637,  -1025,  -1165,    609,   -784,    714,
   -943,  -1352,    324,   -809,   -310,    253,   -406,    333,
   -381,   -764,    670,    707,    792,    552,    878,    514,
   -294,   -590,     35,    785,    693,    664,   -866,   1508,
   -562,   -808,    106,    697,   -534,   -664,   1184,   1086,
  -2004,   -680,    589,    607,     97,     82,     40,    283,
   -233,   -256,    -93,  -1430,   1947,    320,    761,    -54,
   -543,   -676,   -166,    789,   2534,    913,   -934,   -686,
   -888,  -1408,  -1480,   -308,  -1004,  -1161,     52,    854,
  -1168,  -2316,    736,    758,    643,    255,   -467,   -108,
   -126,   -129,   -542,    228,    650,   1551,   1108,   -161,
   -428,   -437,    468,  -1209,    614,    616,  -1771,   -163,
   -499,   -595,   -782,  -1137,   -519,    -86,    917,   -168,
   -986,   -615,   1014,  -1179,    464,  -1311,    546,   -641,
      1,    -99,  -1256,   -716,   -738,   1777,    179,  -1355,
   -827,   -859,   -865,    228,   -593,    432,  -1162,  -1513,
   -125,   -411,  -1124,    465,  -1875,    273,   1043,   -787,
   -943,  -1692,    885,    506,  -1620,   -733,    729,   -751,
  -1050,  -1297,   -539,   -252,   1692,   -690,    700,   1342,
   -245,   -451,   -349,  -1351,    259,  -1124,  -1562,   2105,
  -1097,  -1119,   -713,     97,    266,    -76,   2042,  -1117,
  -2280,    711,   -407,  -1135,    -90,      6,    166,    137,
   -828,  -1765,  -1967,   -790,    847,   1756,   -849,    -65,
   -944,  -1698,   -842,   -630,   1398,  -1788,  -1756,   -986,
   -724,  -2125,  -1745,   2280,   -968,   1096,    728,    266,
    920,  -3607,    893,    233,   -198,    -75,    183,     35,
    165,    131,    397,   -743,    -29,   3720,   -233,    169,
   -200,   -362,   1467,    690,   -482,   2041,  -2519,   -787,
   -679,   -640,   1169,  -1132,  -1000,   1178,   1277,    487,
   -861,   -196,   3365,  -1369,   -606,    -73,   -435,   -226,
    347,    442,  -1264,  -4528,    114,   1906,    105,     36,
   -489,   -372,    635,   -420,    751,    885,   -695,  -4086,
   -259,  -1311,   -555,   -853,  -3517,   1651,   -471,    462,
  -2279,  -2858,   1139,  -1962,   -664,    -50,    -47,     27,
   -963,   -981,   2111,   1236,   2347,   2328,   1793,   1734,
   -465,  -1032,   -169,   1150,   -174,     81,  -3207,   1919,
   -876,  -1249,    135,    194,  -1143,    400,   4581,   2454,
  -4535,    660,    828,    192,    145,   -143,    -85,     27,
    -99,   -539,  -2751,  -1501,   4973,   3772,   1522,     72,
  -1163,  -3136,  -1507,   4610,   3888,    743,  -2791,  -2700,
  -1547,  -4867,  -5047,  -1014,  -2251,  -1397,   -641,   -170,
  -3456,  -6480,   1668,   1826,    599,     60,     95,     53
};

Word16 lspmean[] = { /* Q15 mean value of LSP components */
   3114,   4881,   8235,  11893,  15666,  19258,  23128,  26238
};

Word16 lspp[] = { /* Q14 LSP Predictor Coefficients */
   17051,  13844,  11189,   9437,   7612,   5669,   3704,   1697,
   16955,  14485,  11859,   9992,   8021,   6005,   3936,   1790,
   17289,  15109,  12496,  10560,   8400,   6119,   3900,   1775,
   17643,  15329,  12956,  11035,   8857,   6551,   4329,   1946,
   17458,  14778,  12225,  10421,   8426,   6327,   4197,   1925,
   16998,  13907,  11212,   9460,   7597,   5697,   3812,   1757,
   16749,  13255,  10569,   8778,   7053,   5334,   3589,   1627,
   15808,  12181,   9472,   7936,   6443,   4881,   3300,   1503
};

Word16 lgpecb[] = {  /* Q11 Log-Gain Prediction Error CodeBook */
 -11028,  -7538,  -5670,  -4295,  -3015,   -696,   1378,   3728,
  -1813,    343,   2464,   5377,   7793,  11562,  17830,  24272
};

Word16 lgp[] = {  /* Q15 Log-Gain Predictor */
  25564,  24175,  20155,  19419,  15316,  11914,   7794,   4217
};

Word16 lgmean = 23465; /* Q11 11.457590; */

Word16 cccb[] = { /* Q13 */
  -4215,   6942,   1366,    988,   3192,   9216,  -8770,    398,
  -2162,   -435,   1550,   1456,  23981,  -2152,   -761,   2247,
  -2857,  -2923,  -6273,  -5235,  15665,   7298, -16758,  -6571,
  -1477, -10009, -14162,  -7907,  14281, -10964,   1509,  -2303,
 -11531,   9089,  14127,  -2850,  19040,  13418,   6080,   4309,
  -2711,  -3321,   7297,  12105,  12661,  -1598,   1217,    602,
  -4782,   3736,   2075, -10396,   4815,  -1057,   5052,  -2103,
  -9924,  -6094,  -4988,  -1797,   1608, -15325,  -2534,   9107
};

Word16 pp9cb[] = {   /* PPCBSZ*9 Q14 */
   -369,  -5791,     36,    -65,      6,      0,     -2,   -512,      0,
  -6982,  16214,   1033,   3455,   -511,    220,   -744,  -4011,    -16,
   5522, -19433,   6708,   3275,   3978,  -1130,   -465,  -5762,   -687,
   4296,   7755,   4125,  -1017,   -976,   -541,   -282,   -918,   -260,
   8753,  12341,   2459,  -3296,   -926,   -657,  -1169,  -2324,    -92,
   8938,  27847,  -5397,  -7596,   4586,   1472,  -1219, -11832,   -444,
   4649,   9264,  -2562,  -1314,    724,    364,   -330,  -1310,   -100,
  13739,  16957,   1460,  -7110,   -756,   -612,  -2880,  -4387,    -33,
  -2590,   9432,  -3231,    745,    930,   -255,   -102,  -1357,   -159,
    335,  17684,  -6921,   -181,   3735,     71,     -2,  -4772,   -731,
   3875, -10599,  -4122,   1254,  -1333,    488,   -229,  -1714,   -259,
   1915,  14328,   1784,   -837,   -780,   -104,    -56,  -3132,    -49,
   8772,  21989,    -66,  -5886,     44,     18,  -1174,  -7378,      0,
   1673,  31313,  -2467,  -1598,   2357,    126,    -43, -14961,    -93,
   9448,  15023,  -4465,  -4332,   2047,   1287,  -1362,  -3444,   -304,
  15098,  21982,  -5823, -10128,   3906,   2683,  -3478,  -7373,   -517,
    878,   5427,    985,   -145,   -163,    -26,    -12,   -449,    -15,
  -5474,  21282,  15397,   3555, -10000,   2572,   -457,  -6911,  -3617,
   3248,  -9606,   5315,    952,   1558,   -527,   -161,  -1408,   -431,
   1657,  11874,   8270,   -600,  -2997,   -418,    -42,  -2151,  -1044,
   2574,  16372,  13142,  -1286,  -6566,  -1032,   -101,  -4090,  -2635,
   -577,  23213,   8477,    409,  -6005,    149,     -5,  -8222,  -1096,
   7314,  10598,   8420,  -2366,  -2723,  -1879,   -816,  -1714,  -1082,
   8963,  15442,   7718,  -4224,  -3637,  -2111,  -1226,  -3639,   -909,
  -2843,   9156,   4319,    794,  -1207,    375,   -123,  -1279,   -285,
  -6948,  26394,  10490,   5596,  -8450,   2224,   -737, -10630,  -1679,
  -5826, -11515,    361,  -2047,    127,     64,   -518,  -2023,     -2,
  -4005,  15409,   9802,   1883,  -4609,   1198,   -245,  -3623,  -1466,
   5686,  18875,   6318,  -3275,  -3640,  -1096,   -493,  -5436,   -609,
  -3107,  30631,   4040,   2904,  -3776,    383,   -147, -14317,   -249,
  10404,  13351,   8370,  -4239,  -3410,  -2658,  -1652,  -2720,  -1069,
   3138,  25875,   1998,  -2478,  -1578,   -191,   -150, -10216,    -61
};

/* front-end highpass filter */
Word16 hpfa[] = {16384, 31115, -14834};   /* Q14 */
Word16 hpfb[] = {10094, -20188, 10094};   /* Q14 - with 1.5 down-scaling */

/* coarse pitch search */
Word16 adf_h[] = { 8192, -24233, 29767, -17408, 4099 };
Word16 adf_l[] = { 0, 28521, 17252, 12651, 8243 };
Word16 bdf[]   = { 11353,-18014,25981,-18014,11353 }; 
Word16 x[]     = { 8192, 16384 };
Word16 x2[]    = { 2048, 8192 };
Word16 MPTH[4] = { 20644, 15729, 13763, 11796 };

Word16 winl[] = { /* Q15 */
      4,     16,     37,     65,    102,    146,    199,    260,
    328,    405,    490,    582,    682,    791,    907,   1030,
   1161,   1300,   1446,   1600,   1761,   1929,   2105,   2287,
   2477,   2673,   2876,   3086,   3303,   3526,   3755,   3991,
   4233,   4481,   4734,   4994,   5259,   5530,   5806,   6087,
   6374,   6665,   6962,   7263,   7568,   7878,   8192,   8510,
   8832,   9158,   9487,   9820,  10156,  10495,  10838,  11182,
  11530,  11880,  12232,  12586,  12942,  13300,  13659,  14019,
  14381,  14744,  15108,  15472,  15837,  16201,  16567,  16931,
  17296,  17660,  18024,  18387,  18749,  19109,  19468,  19826,
  20182,  20536,  20888,  21238,  21586,  21930,  22273,  22612,
  22948,  23281,  23610,  23936,  24258,  24576,  24890,  25200,
  25505,  25806,  26103,  26394,  26681,  26962,  27238,  27509,
  27774,  28034,  28287,  28535,  28777,  29013,  29242,  29465,
  29682,  29892,  30095,  30291,  30481,  30663,  30839,  31007,
  31168,  31322,  31468,  31607,  31738,  31861,  31977,  32086,
  32186,  32278,  32363,  32440,  32508,  32569,  32622,  32666,
  32703,  32731,  32752,  32764,  32767,  32667,  32365,  31863,
  31164,  30274,  29197,  27939,  26510,  24917,  23170,  21281,
  19261,  17121,  14876,  12540,  10126,   7650,   5126,   2571
};

Word16 sstwinl_h[] = {
   32748, 32700, 32619, 32507, 32362, 32187, 31981, 31746 
};

Word16 sstwinl_l[] = {
   18309, 3680, 17284, 1384, 32379, 25842, 31362, 3086 
};

/* pole zero noise feedback filter */
Word16 gfsz[] = {
   0, -11469, -15483, -16028, -15057, -13515, -11846, -10249, -8801 
};

Word16 gfsp[] = {
   32767, 27853, 23675, 20124, 17105, 14539, 12358, 10505, 8929 
};

/* gain-level-adaptation */
Word16 idxord[]={ 
   0, 1, 2, 3, 4, 8, 5, 9, 6, 10, 7, 11, 12, 13, 14, 15 
};
